在昨天的文章中,我們達成了一個重要的技術里程碑:利用 Dify + Google Gemini 充當語意解析中樞,將使用者的日常口語轉化為標準結構化 JSON,並透過 n8n 自動派發給 FastAPI 進行餐廳篩選。
然而,目前所有的測試依然停留在 n8n 畫布或開發者工具中。如果想讓身邊的朋友、家人,或是真實使用者隨時隨地都能使用這個美食 Agent,最直覺、門檻最低的載體莫過於大家每天都在用的——LINE!
今天 Day 08,我們將正式跨出本地環境,前往 LINE Developers Console 建立 Messaging API Channel,並完成串接 n8n 所需的金鑰設定與基礎通訊準備!
在開始動手前,我們先釐清 LINE 機器人與我們本地系統的資料流動路徑:
[使用者手機 LINE App]
│ (發送文字訊息)
▼
[LINE Platform 伺服器]
│ (觸發 Webhook POST 請求)
▼
[ngrok 公網隧道 (HTTPS)]
│ (轉發流量至本地端連接埠 5678)
▼
[n8n Webhook 節點] <-- 接收事件封包並啟動 AI 推薦工作流
要讓這條鏈路暢通,核心在於兩樣東西:
1.Channel Secret:用來驗證傳進來的 Webhook 封包是否真的來自 LINE 官方伺服器(數位簽章驗證)。
2.Channel Access Token:未來我們由系統回覆(Reply Message)給使用者時所需的身分憑證。
1.打開瀏覽器前往 LINE Developers Console 官方網站。
2.點擊右上角 Log in,使用你個人的 LINE 帳號登入(若首次登入需填寫開發者名稱與 Email 進行驗證)。
1.Provider 代表組織或專案名稱(例如你的團隊或個人代稱):
2.在 Console 主畫面中,點擊 Create a new provider。
3.在 Provider name 欄位輸入你的專案名稱,例如:FoodAgent-Studio。
點擊 Create 建立完成。
建立完 Provider 後,我們要為美食機器人建立專屬的 Messaging API 通道。
1.在剛剛建立的 Provider 頁面中,點擊 Create a Messaging API channel。
2.依序填寫頻道基本資訊:
Channel type:Messaging API(預設)
Provider:確認為剛建立的 Provider
Channel icon:可上傳一張可愛的美食相關大頭貼
Channel name:機器人顯示名稱,例如 美食探險小幫手
Channel description:簡短描述,例如 專屬個人化的智慧餐飲推薦助理
Category:選擇類別(例如 Restaurants 或 Utilities)
Subcategory:選擇次類別
Email address:填寫你的常用聯絡信箱
3.勾選同意相關服務條款,點擊底部的 Create,確認彈窗後點擊 OK。
為了讓機器人完全由我們的 n8n 工作流掌控,必須關閉 LINE 官方內建的預設罐頭回覆,並取得兩組關鍵金鑰。
1.進入剛建好的 Channel,切換到 Basic settings 分頁。
2.往下捲動找到 Channel secret 區塊。
3.複製並妥善保存這串 32 碼的金鑰字串。
1.切換到 Messaging API 分頁。
2.捲動至最底部找到 Channel access token (long-lived) 區塊。
3.點擊右側的 Issue 按鈕。
4.系統會立即生成一長串長期有效的 Access Token,點擊複製並保存。
LINE 官方帳號預設會在每次收到訊息時自動吐出「感謝您的訊息,目前無法個別回覆…」的罐頭訊息,這會與我們的 AI 工作流衝突,必須將其關閉:
1.在 Messaging API 分頁中,找到 LINE Official Account features 區塊。
2.點擊 Auto-reply messages 旁邊的 Edit(會跳轉至 LINE Official Account Manager 後台)。
3.在回應設定頁面中:
回應模式:保持「聊天」或「Bot」。
自動回應訊息:切換為 停用 (Disabled)。
加入好友歡迎訊息:可依個人喜好選擇開啟或停用。
Webhook:切換為 啟用 (Enabled)。
4.設定完成後關閉該後台分頁即可。
現在我們回到 n8n,為明天的串接先鋪好接收端點!
1.打開瀏覽器進入本地 n8n(http://localhost:5678)。
2.點擊 Add workflow 建立一個名為 LINE Bot Core Workflow 的新流程。
3.點擊 Add first step,搜尋並新增 Webhook 節點。
4.設定如下:
HTTP Method:選擇 POST。
Path:填寫 line-webhook。
Response Mode:先選擇 On Received,Response Body 填寫 {"status": "ok"}。
5.點擊儲存(Save)。
今日結語與明日預告
今天我們順利完成了 LINE Developers 的所有前置準備:
建立專屬 Provider 與 Messaging API Channel。
取得了雙向通訊必備的 Channel Secret 與 Channel Access Token。
關閉了 LINE 官方干擾的罐頭自動回覆。
明天 Day 09,我們將把 ngrok 與 LINE Webhook 正式接軌:配置 LINE Webhook URL,並在 n8n 中驗證數位簽章(X-Line-Signature)與解析 LINE Event 封包! 敬請期待!